To maximize likelihood of locating relevant information amongst an abundance of data, search engines or query processors are regularly employed. A search engine is a tool that facilitates data navigation based on entry of a query comprising one or more keywords. Upon receipt of a query, the engine or processor is operable to retrieve a list of objects or documents (e.g., text documents, websites, images, music, multimedia . . . ), typically ranked based on relevance to the query. Such mechanisms facilitate Internet/web search, user desktop search, and intranet/enterprise search, among other things. To enable this functionality, a supporting infrastructure is generated and maintained.
First, engine agents navigate domains in a methodical manner and retrieve information about objects visited. For example, an agent can make a copy of all or a portion of documents and related information. The engine then analyzes the content captured by one or more agents to determine how a document will be indexed. Some engines will index all words on in a document while others may in only index terms associated with particular tags such as such as title, header or metatag. These agents may also periodically revisit documents to detect and capture changes thereto since the last indexing.
Once the indexes are generated, they are assigned a ranking with respect to certain keywords and stored in a database. An algorithm is used to evaluate the index for relevancy, for example based on frequency and location keywords in a document, among other things. This database can subsequently be employed to evaluate queries.
Upon entry of one or more keywords as a search query, the search engine or query processor retrieves indexed information that matches the query from the database and displays the results to a user. The user can thereafter scroll through a plurality of returned documents to attempt to determine if the documents are related to the interests of the user as specified by a query. This can be a time-consuming process as search engines can return a substantial number of documents. A user may subsequently choose to narrow the search iteratively by altering and/or adding keywords and operators to obtain the identity of documents including relevant information.